html {
  overflow-y: scroll;
}

body {
  padding-top: 50px;
  padding-bottom: 20px;
}

.nav.nav-side ul {
  list-style-type: none;
}

ul.nav.nav-side > li > ul {
  padding-left: 10px;
}

.nav.nav-side li.active > a {
  font-weight: bold;
}

a.navbar-brand {
  padding-top: 10px;
}

.sidelinks {
  float: right;
  margin-top: -20px;
  margin-right: -15px;
}

.sidelinks > ul {
  list-style: none;
  padding: 0;
}

.sidelinks > ul > li {
  display: inline-block;
  padding: 0.3em 1em;
  background-color: #f5f5f5;
}

span.monospaced {
  letter-spacing: 0;
  padding: .1em .5ex;
  word-spacing: -.15em;
  background-color: #f7f7f8;
  -webkit-border-radius: 4px;
  font-family: "Droid Sans Mono", "DejaVu Sans Mono", monospace;
}

img {
  margin: 5px;
}

/* Main page */
.jumbotron {
  color: white;
  background-color: #729eb9;
}

.jumbotron > h1 {
  font-size: 41px;
  margin-top: 18px;
  margin-bottom: 10px;
}

.jumbotron p {
  font-size: 18px;
  max-width: 600px;
}

@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 5px;
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media screen and (min-width: 992px) {
  .jumbotron {
    background-image: url("jumbotron-bg.jpg");
    height: 200px;
  }
}

#jumbo-notice {
  float: right;
  width: 220px;
  margin-left: 40px;
  border-radius: 6px;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  font-weight: 600;
  letter-spacing: -0.18px;
  line-height: 21px;
  padding: 10px;
}

#jumbo-notice:empty {
  display: none;
}

#jumbo-notice a {
  color: #709b33;
}

.page-header {
  margin: 40px 0 0;
  border-bottom: none;
  padding-bottom: 0px;
}

.buttons {
  width: 200px;
}

/* Google search */
#search-box {
  width: 350px;
  margin-top: 9px;
  margin-bottom: 0px;
  max-height: 40px; /* Prevent navbar jumpiness on page load */
}

#gs_id50 {
  margin: 2px;
}

input.gsc-input,
.gsc-input-box,
.gsc-input-box-hover,
.gsc-input-box-focus,
.gsc-search-button {
  box-sizing: content-box;
  line-height: normal;
  font-size: 13px !important;
}

input.gsc-search-button:hover, input.gcs-search-button:focus {
  border-color: #708a29 !important;
  background-color: #708a29 !important;
}

input.gsc-search-button-v2 {
  margin-top: 3px !important;
}

.gsib_a {
  padding-left: 8;
  padding-right: 8;
  padding-top: 3;
  padding-bottom: 0;
}

.gsc-search-box table {
  background: transparent;
}

/* Firefox specific hack */
@-moz-document url-prefix() {
  .gsib_a {
    padding: inherit !important;
  }
}

/* Fixes bad alignment in Asciidoc's [horizontal] labeled lists */
td > p {
  font-size: 1em;
  line-height: 1.42857143;
}

/* Use with an empty span, shows up as a non-selectable "$ " */
.sh-dollar:before {
  content: "$ ";
}
.sh-hash:before {
  content: "# ";
}

/* Homepage refresh June 2018 */
.container-hp {
  margin: 0 15px;
  padding: 0;
}

.sidekick-copy * {
  font-family: 'HelveticaNeue-Bold','Open sans', Arial, sans-serif ;
  font-weight: bold;
  color: white;
}

#learn h1, #learn h4, #learn ul, #connect h1, #connect ul, #integrate h1, #integrate ul, #open-source h1, #open-source ul, #spotlight h1 {
  font-family: "HelveticaNeue-Bold", "Open sans", Arial, sans-serif;
  
  font-weight: bold;
  color: #325f74;
}

#learn h3, #connect h3, #integrate h3, #open-source h3, #spotlight h3 {
  font-family: "HelveticaNeue", "Open sans", Arial, sans-serif;
}

.container-hp #connect {
  background-color: #9aca3c;
}

#learn ul, #integrate ul, #open-source ul, #connect ul {
  font-size: 16px;
}

#open-source {
  background-color: #eef0f0;
}

#spotlight { 
  background-color: #eef0f0;
}

#footer-cta {
  background-color: #325f74;
  text-align: center;
}

#footer-cta h3 {
  font-family: "HelveticaNeue-Bold", "Open sans", Arial, sans-serif;
  font-weight: bold;
  color: white;
}

.white, .sidekick a.button, #integrate a.button, #spotlight a.button, #open-source a.button,
div#connect div:first-child * {
  color: white;
}

.btn-wrapper {
  margin: 20px 0;
}

a.button {
  font-family: "HelveticaNeue-Medium", "Open sans", Arial, sans-serif;
  font-size: 18px;
  padding: 4px 16px;
  background-color: #9aca3c;
  border-radius: 5px;
  color: #325f74;
}

a.img-link {
  font-family: "HelveticaNeue-Bold", "Open sans", Arial, sans-serif;
  font-weight: bold;
  font-size: 16px;
  color: #0080ac;
  display: block;
}

.sidekick {
  background: #325f74;
}

.sidekick-copy {
  padding-left: 10%;
  padding-right: 10%;
}

.flex {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .container-hp {
    margin-top: -40px;
    line-height: 1.75;
  }

  .flex {
    flex-direction: column;
    padding: 20px 25px;
  }

  #connect.flex {
    flex-direction: column-reverse;
  }
}

@media screen and (min-width: 768px) {
  .container-hp {
    margin-top: 20px;
  }

  .flex {
    flex-direction: row;
    padding: 20px 100px;
  }

  #connect.flex {
    flex-direction: row;
  }

  .sidekick {
    padding: 25px 0;
  }
}

@media screen and (min-width: 992px) {
  .container-hp {
    margin-top: -30px;
  }

  .sidekick {
    padding: 50px 0;
  }
}

@media screen and (min-width: 1200px) {
  .container-hp {
    margin-top: -40px;
  }

  .container-hp #learn {
    margin-bottom: 10px;
  }

  .hero {
    background-color: #325f74;
    background-image: url("hero-laptop-phone.png");
    background-position: right;
    background-repeat: no-repeat;
    height: 384px;
  }

  .sidekick {
    height: 384px;
  }

  .sidekick-copy h1 {
    font-size: 60px;
    margin-bottom: 0;
  }

  .sidekick-copy:last-of-type(h3) {
    margin-top: .5em;
  }

  .container-hp #learn, .container-hp #connect,
  .container-hp #integrate, .container-hp #open-source {
    height: 400px;
  }

  #footer-cta {
    height: 150px;
  }
}
